Precision machine vision inspection systems (or “vision systems” for short) can be utilized to obtain precise dimensional measurements of inspected objects and to inspect various other object characteristics. Such systems may include a computer, a camera and optical system, and a precision stage that is movable in multiple directions so as to allow the camera to scan the features of a workpiece that is being inspected. One exemplary prior art system that is commercially available is the QUICK VISION® series of PC-based vision systems and QVPAK® software available from Mitutoyo America Corporation (MAC), located in Aurora, Ill. The features and operation of the QUICK VISION® series of vision systems and the QVPAK® software are generally described, for example, in the QVPAK 3D CNC Vision Measuring Machine User's Guide, published January 2003, and the QVPAK 3D CNC Vision Measuring Machine Operation Guide, published September 1996, each of which is hereby incorporated by reference in their entirety. This product, as exemplified by the QV-302 Pro model, for example, is able to use a microscope-type optical system to provide images of a workpiece at various magnifications, and move the stage as necessary to traverse the workpiece surface beyond the limits of any single video image. A single video image typically encompasses only a portion of the workpiece being observed or inspected, given the desired magnification, measurement resolution, and physical size limitations of such systems.
Machine vision inspection systems generally utilize automated video inspection. U.S. Pat. No. 6,542,180 (the '180 patent) teaches various aspects of such automated video inspection and is incorporated herein by reference in its entirety. As taught in the '180 patent, automated video inspection metrology instruments generally have a programming capability that allows an automatic inspection event sequence to be defined by the user for each particular workpiece configuration. This can be implemented by text-based programming, for example, or through a recording mode which progressively “learns” the inspection event sequence by storing a sequence of machine control instructions corresponding to a sequence of inspection operations performed by a user with the aid of a graphical user interface, or through a combination of both methods. Such a recording mode is often referred to as “learn mode” or “training mode” or “record mode.” Once the inspection event sequence is defined in “learn mode,” such a sequence can then be used to automatically acquire (and additionally analyze or inspect) images of a workpiece during “run mode.”
The machine control instructions including the specific inspection event sequence (i.e., how to acquire each image and how to analyze/inspect each acquired image) are generally stored as a “part program” or “workpiece program” that is specific to the particular workpiece configuration. For example, a part program defines how to acquire each image, such as how to position the camera relative to the workpiece, at what lighting level, at what magnification level, etc. Further, the part program defines how to analyze/inspect an acquired image, for example, by using one or more video tools such as edge/boundary detection video tools.
Video tools (or “tools” for short) and other graphical user interface features may be used manually to accomplish manual inspection and/or machine control operations (in “manual mode”). Their set-up parameters and operation can also be recorded during learn mode, in order to create automatic inspection programs, or “part programs”. Video tools may include, for example, edge/boundary detection tools, autofocus tools, shape or pattern matching tools, dimension measuring tools, and the like.
Various methods are known for locating edge features in workpiece images. For example, various algorithms are known which apply brightness gradient operators to images which include an edge feature to determine its location, e.g. a Canny Edge detector or a differential edge detector. Such edge detection algorithms may be included in the machine vision inspection systems which also use carefully configured illumination and/or special image processing techniques to enhance brightness gradients or otherwise improve edge location accuracy and repeatability.
Some machine vision systems (e.g. those utilizing the QVPAK® software described above) provide edge location video tools which have adjustable parameters for an edge detection algorithm. In certain implementations, the parameters may initially be determined for an edge on a representative workpiece during a learn mode operation and then utilized during a run mode operation to find the corresponding edge of a similar workpiece. When desirable edge detection parameters are difficult or impossible to determine automatically during the learn mode, the user may choose to adjust the parameters manually. However certain edge detection parameters (e.g. thresholds such as TH, THR, and THS, outlined herein) are considered to be difficult to understand for the majority of users (e.g. relatively unskilled users), and how their adjustment affects a particular edge detection operation is considered difficult to visualize, particularly for a combination of parameters. The adjustments of the parameters may be further complicated by the variety of edge conditions and workpiece materials in part to part variations encountered when programming and using general purpose machine vision inspection system. An improved method and system that allows relatively unskilled users to adjust the parameters of edge location video tools so that they can be used to reliably inspect a variety of types of edges would be desirable.